package com.nuoniu.sibanyun.entity.dto;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @ClassName DynamicVoucherDto
 * @Description 单据动态分页查询DTO
 * @Authpr baiqiang
 * @Date 2020/11/13 14:43
 **/
@Data
@ApiModel("单据动态分页查询DTO")
public class DynamicVoucherDto {

    @ApiModelProperty(value = "是否查询明细")
    private Boolean isSearchDetail = true;

    @ApiModelProperty(value = "分页查询（必填：current、size必传）")
    private Page page = new Page();

    @ApiModelProperty(value = "动态条件")
    private List<ErpVoucherDesignSearchDto> designSearchDtos;

    @ApiModelProperty(value = "选填：排序字段")
    private String sortField;

    @ApiModelProperty(value = "选填：排序类型： ascend descend")
    private String sortOrder;

    @ApiModelProperty(value = "单据状态")
    private Integer voucherState;

    @ApiModelProperty(value = "退货业务类型 (只有 1 (退货业务)和 2 （非退货业务） ，且只适用于 采购和销售 业务)")
    private Integer businessType;

    @ApiModelProperty(value = "指定的 业务类型 ")
    private String someBusinessType;

    @ApiModelProperty(value = "查询类型 1：普通查询  2：选单查询")
    private Integer searchType = 1;

    @ApiModelProperty(value = "前端无需专递")
    private List<Long> inWarehouseIds;

    @ApiModelProperty(value = "是否只查询创建人的数据:前端无需专递")
    private Boolean isSelectCreateData;

    @ApiModelProperty(value = "是否只查询自己管理的仓库数据，或者自己创建的数据")
    private Boolean isMyWarehouse = false;

    @ApiModelProperty(value = "单据状态集合")
    private List<Integer> voucherStateList;

    @ApiModelProperty(value = "开始单据状态")
    private Integer startVoucherState ;

    @ApiModelProperty(value = "结束单据状态")
    private Integer endVoucherState ;

    @ApiModelProperty(value = "数据来源：单据唯一标识 ")
    private String dataSource;
}
